Optimizing SAT Encodings for Arithmetic Constraints
نویسندگان
چکیده
The log encoding has been perceived to be unsuited to arithmetic constraints due to its hindrance to propagation. The surprising performance of PicatSAT, which is a pure eager SAT compiler based on the log encoding, in the MiniZinc Challenge 2016 has revived interest in the log encoding. This paper details the optimizations used in PicatSAT for encoding arithmetic constraints. PicatSAT adopts some well-known optimizations from CP systems, language compilers, and hardware design systems for encoding constraints into compact and efficient SAT code. PicatSAT is also empowered by a novel optimization, called equivalence reasoning, for arithmetic constraints, which leads to reduction of code size and execution time. In a nutshell, this paper demonstrates that the optimized log encoding is competitive for encoding arithmetic constraints.
منابع مشابه
Encoding Basic Arithmetic Operations for SAT-Solvers
In this paper we start an investigation to check the best we can do with SAT encodings for solving two important hard arithmetic problems, integer factorization and discrete logarithm. Given the current success of using SAT encodings for solving problems with linear arithmetic constraints, studying the suitability of SAT for solving non-linear arithmetic problems was a natural step. However, ou...
متن کاملTowards Robust CNF Encodings of Cardinality Constraints
Motivated by the performance improvements made to SAT solvers in recent years, a number of different encodings of constraints into SAT have been proposed. Concrete examples are the different SAT encodings for ≤ 1 (x1, . . . , xn) constraints. The most widely used encoding is known as the pairwise encoding, which is quadratic in the number of variables in the constraint. Alternative encodings ar...
متن کاملSolving Non-linear Polynomial Arithmetic via SAT Modulo Linear Arithmetic
Polynomial constraint-solving plays a prominent role in several areas of engineering and software verification. In particular, polynomial constraint solving has a long and successful history in the development of tools for proving termination of programs. Well-known and very efficient techniques, like SAT algorithms and tools, have been recently proposed and used for implementing polynomial con...
متن کاملEncoding Linear Constraints with Implication Chains to CNF
Linear constraints are the most common constraints occurring in combinatorial problems. For some problems which combine linear constraints with highly combinatorial constraints, the best solving method is translation to SAT. Translation of a single linear constraint to SAT is a well studied problem, particularly for cardinality and pseudoBoolean constraints. In this paper we describe how we can...
متن کاملThe Effects of Arithmetic Encodings on SAT Solver Performance
As digital systems continue to grow, verification of these systems is becoming an increasingly important and difficult problem. To ensure a quick time-to-market, the verification problem must be addressed early in the design cycle. This requires the ability to verify systemlevel descriptions of hardware and embedded software systems, such as, C or Verilog, by proving assertions and proving func...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2017